﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _20161213_TeaProject
{
    class ProgramManager
    {
        TeaList list = new TeaList();

        public void UserDialog()
        {
            Console.SetWindowSize(100, 30);
            bool isExit = false;
            while (isExit == false)
            {
                Console.WriteLine("Выберите действие");
                Console.WriteLine("1 - Ввести новый сорт чая");
                Console.WriteLine("2 - Вывести список всех сортов чая");
                Console.WriteLine("3 - Вывести список всех сортов чая по стране-производителю");
                Console.WriteLine("4 - Посчитать стоимость покупки");
                Console.WriteLine("0 - Выход");
                string c = Console.ReadLine();
                switch (c)
                {
                    case "1":
                        list.Add();
                        break;
                    case "2":
                        list.PrintListToConsole();
                        break;
                    case "3":
                        Console.WriteLine("Введите страну");
                        string country = Console.ReadLine();
                        list.PrintListToConsoleByCountry(country);
                        break;
                    case "4":
                        CalculatePurchasePrice();
                        break;

                    case "0":
                    case "":
                        Console.WriteLine("Пака!");
                        isExit = true;
                        break;
                    default:
                        Console.WriteLine("Непредусмотренная операция.");
                        break;
                }
            }
        }

        void CalculatePurchasePrice()
        {
            list.PrintListToConsole();
            double sum = 0;
            bool isExit = false;
            while (isExit == false)
            {
                list.PrintListToConsole();
                Console.WriteLine("Укажите номер чая из списка");
                int number = Int32.Parse(Console.ReadLine());
                if (number <= list.GetElementsCount())
                {
                    Console.WriteLine("Сколько пачек необходимо");
                    int packCount = Int32.Parse(Console.ReadLine());
                    Tea tea = list.GetTea(number - 1);
                    double sumItem = tea.GetPriceOfPack() * packCount;
                    sum += sumItem;
                    Console.WriteLine("Стоимость позиции {0} грн", sumItem);
                }
                else
                {
                    Console.WriteLine("Указанного элемента не существует");
                }
                Console.WriteLine("Ещё? Y/N");
                if (!Console.ReadLine().ToUpper().Equals("Y"))
                {
                    Console.WriteLine("Общая сумма заказа - {0} грн.", sum);
                    Console.WriteLine();
                    isExit = true;
                }
            }

        }
    }
}
